cmake_minimum_required(VERSION 3.10)
project(Message)

set(CMAKE_CXX_STANDARD 17)
set(CMAKE_RUNTIME_OUTPUT_DIRECTORY ${CMAKE_SOURCE_DIR})

# 创建公共静态库（避免重复编译）
add_library(common_lib STATIC
    message.cpp    # 包含 compute_checksum 函数
    User.cpp
)

# 服务端可执行文件
add_executable(server
    server.cpp     # 主程序入口
)
target_link_libraries(server PRIVATE
    common_lib     # 链接公共代码库
    z              # 链接 zlib
)

# 客户端可执行文件
add_executable(client
    client.cpp     # 主程序入口
)
target_link_libraries(client PRIVATE
    common_lib
    z
)
